Skip to content

feat: sealed PolylineFormatter architecture with FormatterBuilder and PolylineOptions#228

Closed
Copilot wants to merge 22 commits intodevelop/1.0from
copilot/extend-polylinealgorithm-multi-dimensional-support
Closed

feat: sealed PolylineFormatter architecture with FormatterBuilder and PolylineOptions#228
Copilot wants to merge 22 commits intodevelop/1.0from
copilot/extend-polylinealgorithm-multi-dimensional-support

Conversation

Copy link
Copy Markdown

Copilot AI commented Apr 7, 2026

  • Explore codebase to understand current structure
  • Step 1: Create PolylineEncodingOptions<TCoordinate> and PolylineDecodingOptions<TCoordinate> (using HasPrevious + Previous pattern for netstandard2.1 compatibility)
  • Step 2: Add IChunkedPolylineEncoder<TValue, TPolyline> and IChunkedPolylineDecoder<TPolyline, TValue> interfaces
  • Step 3: Add Encode overload to PolylineEncoder implementing IChunkedPolylineEncoder
  • Step 4: Add Decode overload to PolylineDecoder implementing IChunkedPolylineDecoder
  • Step 5: Add extension methods in PolylineEncoderExtensions and PolylineDecoderExtensions
  • Step 6: Update PublicAPI.Unshipped.txt with all 20 new public API entries
  • Step 7: Add 10 tests for chunked encode/decode
  • Fix HasPrevious XML documentation to clarify that formatter's baseline is always used (defaults to zero when unconfigured)

…tatic class, update base classes and options

Agent-Logs-Url: https://github.com/petesramek/polyline-algorithm-csharp/sessions/66b5b819-3735-47b2-a2ec-372ae483e46b

Co-authored-by: petesramek <2333452+petesramek@users.noreply.github.com>
…pdate PolylineOptions to two-generic form

Agent-Logs-Url: https://github.com/petesramek/polyline-algorithm-csharp/sessions/d0d5745e-96e3-4147-9b10-d3faf9374824

Co-authored-by: petesramek <2333452+petesramek@users.noreply.github.com>
Copilot AI and others added 2 commits April 8, 2026 02:03
…metic, doc comment, add formatter-path integration tests

Agent-Logs-Url: https://github.com/petesramek/polyline-algorithm-csharp/sessions/f4994093-4128-4101-b5df-f6a031463712

Co-authored-by: petesramek <2333452+petesramek@users.noreply.github.com>
…n messages in AbstractPolylineDecoder

Agent-Logs-Url: https://github.com/petesramek/polyline-algorithm-csharp/sessions/f4994093-4128-4101-b5df-f6a031463712

Co-authored-by: petesramek <2333452+petesramek@users.noreply.github.com>
Copilot AI and others added 2 commits April 8, 2026 20:43
…lue/WriteValue, GetRequiredBufferSize; use ulong for zigzag arithmetic; update block max length to 13

Agent-Logs-Url: https://github.com/petesramek/polyline-algorithm-csharp/sessions/b16b1bac-62fc-44de-9c08-88c566cf476e

Co-authored-by: petesramek <2333452+petesramek@users.noreply.github.com>
Copilot stopped work on behalf of petesramek due to an error April 9, 2026 09:48
Copilot stopped work on behalf of petesramek due to an error April 9, 2026 11:56
Copilot AI and others added 7 commits April 9, 2026 18:02
Replace all references to AbstractPolylineEncoder, AbstractPolylineDecoder,
PolylineEncodingOptions, and PolylineEncodingOptionsBuilder with the new
fluent FormatterBuilder<TCoordinate, TPolyline> API.

- Features list updated to mention FormatterBuilder, PolylineFormatter,
  PolylineEncoder, PolylineDecoder, and PolylineOptions
- Usage section rewritten with Quick Start, Building a formatter,
  Encoding, Decoding, and Advanced options subsections
- All code examples replaced with new API patterns
- FAQ updated to reference FormatterBuilder and PolylineOptions

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Co-authored-by: petesramek <2333452+petesramek@users.noreply.github.com>
…edPolylineEncoder/Decoder for chunked encoding support

Agent-Logs-Url: https://github.com/petesramek/polyline-algorithm-csharp/sessions/49b11574-fbb3-42e8-b1f2-8af7fc403268

Co-authored-by: petesramek <2333452+petesramek@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants